﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;
using RESTServicioTecnico_Final.Dominio;
using RESTServicioTecnico_Final.Persistencia;
using System.ServiceModel.Web;
using System.Net;


namespace RESTServicioTecnico_Final
{
    public class Ordenes : IOrdenes
    {
        private OrdenServicioDAO dao = new OrdenServicioDAO();

        public OrdenServicio CrearOrdenServicio(OrdenServicio OrdenServicioACrear)
        {
            if ("1".Equals(OrdenServicioACrear.Codigo))
            {
                throw new WebFaultException<string>(
                    "Orden imposible", HttpStatusCode.InternalServerError);
            }

            return dao.Crear(OrdenServicioACrear);
        }

        public OrdenServicio ObtenerOrdenServicio(string codigo)
        {
            return dao.Obtener(codigo);

        }

        public OrdenServicio ModificarOrdenServicio(OrdenServicio OrdenServicioAModificar)
        {
            return dao.Modificar(OrdenServicioAModificar);
        }

        public void EliminarOrdenServicio(string codigo)
        {
            dao.Eliminar(dao.Obtener(codigo));
        }

        public List<OrdenServicio> ListarOrdenes()
        {
           return dao.ListarTodos();
        }

    }

} 

